package br.edu.ufcg.lsd.wbis.ui.client.services;

import br.edu.ufcg.lsd.wbis.ui.client.beans.RootCreationStatus;
import br.edu.ufcg.lsd.wbis.ui.client.beans.UserInfo;

import com.google.gwt.core.client.GWT;
import com.google.gwt.user.client.rpc.RemoteService;
import com.google.gwt.user.client.rpc.RemoteServiceRelativePath;

/**
 * @author Renato Miceli
 */
@RemoteServiceRelativePath("GENERAL_SERVICE")
public interface GeneralService extends RemoteService {

	public static class Util {

		public static GeneralServiceAsync getInstance() {

			return GWT.create(GeneralService.class);
		}
	}

	public UserInfo login(UserInfo info) throws Exception;

	public UserInfo register(UserInfo userInfo) throws Exception;

	public RootCreationStatus getRootUserStatus();

}
